﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using NHibernate;
using WCFAvante;

namespace Comandos.ComandoPropuesta
{
    public class ModificarPropuesta : Comando<Propuesta>
    {
        private Propuesta propuesta;
        private int respuesta = 0;

        #region Constructor

        /// <summary>Constructor por defecto de la clase 'Modificar'.</summary>
        public ModificarPropuesta()
        { }

        /// <summary>Constructor de la clase 'Modificar'.</summary>
        public ModificarPropuesta(Propuesta _propuesta)
        {
            this.propuesta = _propuesta;
        }

        #endregion

        #region Metodos
        public int Ejecutar()
        {
            // setup nhibernate configuration
            NHibernate.Cfg.Configuration config = new NHibernate.Cfg.Configuration();
            String file = "C:/Users/Anya/Desktop/WCFAvante/App_Code/Mappings/Propuesta.hbm.xml";
            //config.AddDirectory(new System.IO.DirectoryInfo(HttpContext.Current.Server.MapPath(@"~/App_Code/Mappings")));
            config.AddXmlFile(file);
            // setup nhibernate session
            ISessionFactory factory = config.BuildSessionFactory();
            ISession session = factory.OpenSession();
            // start nhibernate transaction
            ITransaction transaction = session.BeginTransaction();

            session.Update(propuesta);

            // commit all of the changes to the DB and close the ISession
            transaction.Commit();
            session.Close();

            return respuesta;
        }
        #endregion
    }
}